/* 
 * Enterprise Library Extensions - DI + ORM.
 * Copyright (C) 2006
 *
 * GNU General Public License
 *
 * This program is free software; you can redistribute 
 * it and/or modify it under the terms of the GNU General Public License 
 * as published by the Free Software Foundation; either version 2 of the 
 * License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful, but 
 * WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 * See the GNU General Public License for more details.
 */
using System;

namespace ELE.EnterpriseLibrary.Naming
{
	/// <summary>
	/// Constant variables that hold names of environment settings for context.
	/// </summary>
	public class NamingContextConstants
  {
    /// <summary>
    ///  Constant that holds the name of the environment property for specifying an applet for the 
    ///  initial context constructor to use when searching for other properties. 
    /// </summary>
    public const string APPLET = "Applet";
    /// <summary>
    /// Constant that holds the name of the environment 
    /// property for specifying the authoritativeness of the service requested.
    /// </summary>
    public const string AUTHORITATIVE = "Authoritative";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the batch size to use when returning data via the service's protocol. 
    /// </summary>
    public const string BATCHSIZE = "BatchSize";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the 
    /// DNS host and domain names to use for the JNDI URL context (for example, 
    /// "dns://somehost/wiz.com"). 
    /// </summary>
    public const string DNS_URL = "DnsUrl";
    /// <summary>
    /// Constant that holds the name of the environment property for 
    /// specifying the initial context factory to use. 
    /// </summary>
    public const string INITIAL_CONTEXT_FACTORY = "InitialContextFactory";
    /// <summary>
    /// Constant that holds the name of the environment property for 
    /// specifying the assembly name of the initial context factory to use. 
    /// </summary>
    public const string INITIAL_CONTEXT_FACTORY_ASSEMBLY = "InitialContextFactoryAssembly";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the preferred language to use with the service. 
    /// </summary>
    public const string LANGUAGE = "Language";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the list of object factories to use. 
    /// </summary>
    public const string OBJECT_FACTORIES = "ObjectFactories";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the list of assemblies of the object factories to use. 
    /// </summary>
    public const string OBJECT_FACTORY_ASSEMBLIES = "ObjectFactoryAssemblies";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the service provider to use. 
    /// </summary>
    public const string PROVIDER_URL = "ProviderUrl";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the service provider to use. 
    /// </summary>
    public const string PROVIDER_PORT = "ProviderPort";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying how referrals 
    /// encountered by the service provider are to be processed. 
    /// </summary>
    public const string REFERRAL = "Referral";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the security level to use. 
    /// </summary>
    public const string SECURITY_AUTHENTICATION = "SecurityAuthentication";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the credentials of the 
    /// principal for authenticating the caller to the service. 
    /// </summary>
    public const string SECURITY_CREDENTIALS = "SecurityCredentials";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the identity of the principal 
    /// for authenticating the caller to the service. 
    /// </summary>
    public const string SECURITY_PRINCIPAL = "SecurityPrincipal";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the security protocol to use. 
    /// </summary>
    public const string SECURITY_PROTOCOL = "SecurityProtocol";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the list of state factories to use. 
    /// </summary>
    public const string STATE_FACTORIES = "StateFactories";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying the list of package prefixes to 
    /// use when loading in URL context factories. 
    /// </summary>
    public const string URL_PKG_PREFIXES = "UrlPkgPrefixes";
    /// <summary>
    /// Contains the name of a default ondi configuration filename
    /// </summary>
    public const string DEFAULT_INITIAL_FILE = "ondi.config";
    /// <summary>
    /// Identifies an environment property that refers to the root of all configuration files of the context's components
    /// </summary>
    public const string LOCAL_CONTEXT_ROOT = "LocalContextRoot";
    /// <summary>
    /// Identifies an environment property that refers to the logger's configuration file of the context's components
    /// </summary>
    public const string LOCAL_CONTEXT_LOGGER = "LocalContextLogger";
    /// <summary>
    /// Identifies an environment property that refers to the global entries that can be used by any of the context's components
    /// </summary>
    public const string LOCAL_GLOBAL_ENTRIES = "LocalGlobalEntries";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the url used to serve remote context objects. 
    /// </summary>
    public const string REMOTING_URL = "RemotingUrl";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the port used to serve remote context objects. 
    /// </summary>
    public const string REMOTING_PORT = "RemotingPort";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the port used to serve remote context objects. 
    /// </summary>
    public const string REMOTING_PROTOCOL = "RemotingProtocol";
    /// <summary>
    /// A name to identify the channel and avoid collisions with other remoting client 
    /// channels
    /// </summary>
    public const string REMOTING_CHANNEL_NAME = "RemotingChannelName";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the location of a configuration file to setup remoting of the context objects. 
    /// </summary>
    public const string REMOTING_CONFIGURATION = "RemotingConfiguration";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the url used to serve remote context objects. 
    /// </summary>
    public const string REMOTE_URL = "RemoteUrl";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the port used to serve remote context objects. 
    /// </summary>
    public const string REMOTE_PORT = "RemotePort";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// configuration information for the port used to serve remote context objects. 
    /// </summary>
    public const string REMOTE_PROTOCOL = "RemoteProtocol";
    /// <summary>
    /// A name to identify the channel and avoid collisions with other remoting client 
    /// channels
    /// </summary>
    public const string REMOTE_CHANNEL_NAME = "RemoteChannelName";
    /// <summary>
    /// Constant that holds the name of the environment property for specifying 
    /// the location of a configuration file to setup remote context objects. 
    /// </summary>
    public const string REMOTE_CONFIGURATION = "RemoteConfiguration";
    /// <summary>
    /// Enviroment setting that holds the hash map of subcontext definitions
    /// </summary>
    public const string SUB_CONTEXTS = "SubContexts";
    /// <summary>
    /// TCP protocol for remoting
    /// </summary>
    public const string REMOTING_PROTOCOL_TCP = "tcp";
    /// <summary>
    /// HTTP protocol for remoting
    /// </summary>
    public const string REMOTING_PROTOCOL_HTTP= "http";
    /// <summary>
    /// extension for configuration file names
    /// </summary>
    public const string CONFIG_EXTENSION = ".config";
  }
}
